diff --git a/share/cmake/modules/FindExtPackages.cmake b/share/cmake/modules/FindExtPackages.cmake
index c98e0af3..5f685935 100644
--- a/share/cmake/modules/FindExtPackages.cmake
+++ b/share/cmake/modules/FindExtPackages.cmake
@@ -34,7 +34,7 @@ find_package(yaml-cpp 0.6.3 REQUIRED)
 
 # Half (OpenEXR/IlmBase)
 # https://github.com/openexr/openexr
-find_package(Half 2.4.0 REQUIRED)
+find_package(Imath 3.0 REQUIRED)
 
 # pystring
 # https://github.com/imageworks/pystring
diff --git a/src/OpenColorIO/BitDepthUtils.h b/src/OpenColorIO/BitDepthUtils.h
index a8b3cbd9..bb0163bf 100644
--- a/src/OpenColorIO/BitDepthUtils.h
+++ b/src/OpenColorIO/BitDepthUtils.h
@@ -7,7 +7,7 @@
 
 #include <OpenColorIO/OpenColorIO.h>
 
-#include "OpenEXR/half.h"
+#include "Imath/half.h"
 
 
 namespace OCIO_NAMESPACE
diff --git a/src/OpenColorIO/CMakeLists.txt b/src/OpenColorIO/CMakeLists.txt
index 2ce801e6..824f8a98 100755
--- a/src/OpenColorIO/CMakeLists.txt
+++ b/src/OpenColorIO/CMakeLists.txt
@@ -207,7 +207,7 @@ target_link_libraries(OpenColorIO
 		public_api
 	PRIVATE
 		expat::expat
-		IlmBase::Half
+		Imath::Imath
 		pystring::pystring
 		sampleicc::sampleicc
 		utils::strings
diff --git a/src/OpenColorIO/MathUtils.h b/src/OpenColorIO/MathUtils.h
index 309c6244..0873d490 100644
--- a/src/OpenColorIO/MathUtils.h
+++ b/src/OpenColorIO/MathUtils.h
@@ -9,7 +9,7 @@
 
 #include <OpenColorIO/OpenColorIO.h>
 
-#include "OpenEXR/half.h"
+#include "Imath/half.h"
 
 namespace OCIO_NAMESPACE
 {
diff --git a/src/OpenColorIO/ops/range/RangeOp.cpp b/src/OpenColorIO/ops/range/RangeOp.cpp
index 9ec863e2..444dac75 100644
--- a/src/OpenColorIO/ops/range/RangeOp.cpp
+++ b/src/OpenColorIO/ops/range/RangeOp.cpp
@@ -7,7 +7,7 @@
 #include <OpenColorIO/OpenColorIO.h>
 
 #include "GpuShaderUtils.h"
-#include "OpenEXR/half.h"
+#include "Imath/half.h"
 #include "HashUtils.h"
 #include "MathUtils.h"
 #include "ops/lut1d/Lut1DOpData.h"
diff --git a/src/OpenColorIO/transforms/builtins/ACES.cpp b/src/OpenColorIO/transforms/builtins/ACES.cpp
index 20968c0d..9ee2ac27 100644
--- a/src/OpenColorIO/transforms/builtins/ACES.cpp
+++ b/src/OpenColorIO/transforms/builtins/ACES.cpp
@@ -6,7 +6,7 @@
 
 #include <OpenColorIO/OpenColorIO.h>
 
-#include "OpenEXR/half.h"
+#include "Imath/half.h"
 #include "ops/fixedfunction/FixedFunctionOp.h"
 #include "ops/gradingrgbcurve/GradingRGBCurveOp.h"
 #include "ops/log/LogOp.h"
diff --git a/src/OpenColorIO/transforms/builtins/OpHelpers.cpp b/src/OpenColorIO/transforms/builtins/OpHelpers.cpp
index 04b8fbd4..288ca566 100644
--- a/src/OpenColorIO/transforms/builtins/OpHelpers.cpp
+++ b/src/OpenColorIO/transforms/builtins/OpHelpers.cpp
@@ -4,7 +4,7 @@
 
 #include <OpenColorIO/OpenColorIO.h>
 
-#include "OpenEXR/half.h"
+#include "Imath/half.h"
 #include "ops/lut1d/Lut1DOp.h"
 #include "transforms/builtins/OpHelpers.h"
 
diff --git a/src/apps/ocioconvert/CMakeLists.txt b/src/apps/ocioconvert/CMakeLists.txt
index 68a5db17..6fea394a 100755
--- a/src/apps/ocioconvert/CMakeLists.txt
+++ b/src/apps/ocioconvert/CMakeLists.txt
@@ -27,7 +27,7 @@ set_target_properties(ocioconvert PROPERTIES
 target_link_libraries(ocioconvert
     PRIVATE
         apputils
-        IlmBase::Half
+        Imath::Imath
         ${OCIO_GL_LIB}
         oiiohelpers
         OpenColorIO
diff --git a/src/apps/ocioconvert/main.cpp b/src/apps/ocioconvert/main.cpp
index b56d4999..7e8af7d0 100644
--- a/src/apps/ocioconvert/main.cpp
+++ b/src/apps/ocioconvert/main.cpp
@@ -24,7 +24,7 @@ namespace OIIO = OIIO_NAMESPACE;
 #endif // OCIO_GPU_ENABLED
 
 #include "oiiohelpers.h"
-#include "OpenEXR/half.h"
+#include "Imath/half.h"
 
 
 // Array of non OpenColorIO arguments.
diff --git a/src/apps/ocioperf/CMakeLists.txt b/src/apps/ocioperf/CMakeLists.txt
index 69e9ba4c..bcbe47be 100644
--- a/src/apps/ocioperf/CMakeLists.txt
+++ b/src/apps/ocioperf/CMakeLists.txt
@@ -20,7 +20,7 @@ set_target_properties(ocioperf PROPERTIES
 target_link_libraries(ocioperf
     PRIVATE
         apputils
-        IlmBase::Half
+        Imath::Imath
         oiiohelpers
         OpenColorIO
         OpenImageIO::OpenImageIO
diff --git a/src/apps/ocioperf/main.cpp b/src/apps/ocioperf/main.cpp
index 6427860d..f6e4a63c 100644
--- a/src/apps/ocioperf/main.cpp
+++ b/src/apps/ocioperf/main.cpp
@@ -11,7 +11,7 @@ namespace OIIO = OIIO_NAMESPACE;
 #endif
 
 #include "apputils/argparse.h"
-#include "OpenEXR/half.h"
+#include "Imath/half.h"
 #include "oiiohelpers.h"
 #include "utils/StringUtils.h"
 
diff --git a/src/libutils/oiiohelpers/CMakeLists.txt b/src/libutils/oiiohelpers/CMakeLists.txt
index 6ef7c368..5f4a5113 100644
--- a/src/libutils/oiiohelpers/CMakeLists.txt
+++ b/src/libutils/oiiohelpers/CMakeLists.txt
@@ -31,7 +31,7 @@ target_link_libraries(oiiohelpers
 
     PRIVATE
         OpenColorIO
-        IlmBase::Half
+        Imath::Imath
         utils::strings
 )
 
diff --git a/src/libutils/oiiohelpers/oiiohelpers.cpp b/src/libutils/oiiohelpers/oiiohelpers.cpp
index be1a937d..e7db652c 100644
--- a/src/libutils/oiiohelpers/oiiohelpers.cpp
+++ b/src/libutils/oiiohelpers/oiiohelpers.cpp
@@ -5,7 +5,7 @@
 #include <OpenColorIO/OpenColorIO.h>
 
 
-#include "OpenEXR/half.h"
+#include "Imath/half.h"
 #include "oiiohelpers.h"
 #include "utils/StringUtils.h"
 
diff --git a/tests/cpu/CMakeLists.txt b/tests/cpu/CMakeLists.txt
index 67389962..8e8dd900 100755
--- a/tests/cpu/CMakeLists.txt
+++ b/tests/cpu/CMakeLists.txt
@@ -18,7 +18,7 @@ function(add_ocio_test NAME SOURCES PRIVATE_INCLUDES)
             public_api
         PRIVATE
             expat::expat
-            IlmBase::Half
+            Imath::Imath
             pystring::pystring
             sampleicc::sampleicc
             unittest_data
